//
//    Copyright (C) 2012  OinkStudio
//
//    This program is free software: you can redistribute it and/or modify
//    it under the terms of the GNU General Public License as published by
//    the Free Software Foundation, either version 3 of the License, or
//    (at your option) any later version.
//
//    This program is distributed in the hope that it will be useful,
//    but WITHOUT ANY WARRANTY; without even the implied warranty of
//    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
//    GNU General Public License for more details.
//
//    You should have received a copy of the GNU General Public License
//    along with this program.  If not, see <http://www.gnu.org/licenses/>.
package game;

import java.io.Serializable;

public abstract class Skill implements Cloneable, Serializable {

	protected String name;

	public String getName() {
		return name;
	}

	public Skill(String name) {
		this.name = name;
	}

	public abstract void check(Skill nextSkill, Game game, int row, int column);

	public Skill clone() throws CloneNotSupportedException {
		Skill toClone = (Skill) super.clone();
		toClone.name = this.name;
		return toClone;
	}

	public abstract boolean beEquals(Skill skill);
	// public abstract int hashCode();

}
